<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Title</title>
</head>
<body>

</body>
<script>
	// - 变量声明提升
	// - 通过var定义(声明)的变量, 在定义语句之前就可以访问到
	// - 值: undefined
	// {
	// 	// console.log(a);// undefined
	// 	// var a = 1;
	// 	// console.log(a);// 1
	//
	// 	// 整理：
	// 	var a;
	// 	console.log(a);// undefined
	// 	a = 1;
	// 	console.log(a);// 1
	// }
	
	// - 函数声明提升
	// - 通过function声明的函数, 在之前就可以直接调用
	// - 值: 函数定义(对象)
	// {
	// 	// fn(1);
	// 	// function fn(num){
	// 	// 	console.log(num)
	// 	// }
	// 	// fn(2);
	//
	// 	// 整理：
	// 	function fn(num){
	// 		console.log(num)
	// 	}
	// 	fn(1);
	// 	fn(2);
	// }
	// * JS提升是以script为界限的（一段一段的进行预解析）
	console.log(a);
</script>
<script>
	
	console.log(a);// undefined
	var a = 100;
	console.log(a);// 100
</script>
<script>
	console.log(a);
</script>
</html>